package tests.fakes;

import jeconbond.automata.behaviour.antstrat.IFeramonStorrage;
import jeconbond.automata.behaviour.IWalkStrategy;
import jeconbond.automata.IOutcome;
import jeconbond.economic.agent.IEconomicAgent;
import jeconbond.economic.systems.market.IMarketResourceRedestributionSystem;
import jeconbond.economic.production.IResourceNecessityInformer;

import java.util.List;
import java.util.ArrayList;

public class FakeFeramonStorr implements IFeramonStorrage {
	public List<IOutcome> historyOut = new ArrayList<IOutcome>();
	public List<Double> historyFerVal = new ArrayList<Double>();
	private IFeramonStorrage subStorrage;

	public FakeFeramonStorr(IFeramonStorrage subStorrage) {
		this.subStorrage = subStorrage;
	}

	@Override
	public IWalkStrategy getClientWalkStrategy() {
		return null;
	}

	@Override
	public IResourceNecessityInformer getClientResourceNecessityInformer() {
		return null;
	}

	@Override
	public IEconomicAgent[] generateAntAgents(int count, IMarketResourceRedestributionSystem mrrs) {
		return null;
	}

	@Override
	public double computeFeramon(IOutcome outcome) {
		return 0.0;
	}

	@Override
	public void storeFeramon(IOutcome outcome, double feramonValue) {
		historyOut.add(outcome);
		historyFerVal.add(feramonValue);
		subStorrage.storeFeramon(outcome, feramonValue);
	}
}
